package com.lebang.example;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.Iterator;
import java.util.List;

public class CencesApruExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    private Integer limit;

    private Long offset;

    public CencesApruExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    public void setLimit(Integer limit) {
        this.limit = limit;
    }

    public Integer getLimit() {
        return limit;
    }

    public void setOffset(Long offset) {
        this.offset = offset;
    }

    public Long getOffset() {
        return offset;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        protected void addCriterionForJDBCDate(String condition, Date value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            addCriterion(condition, new java.sql.Date(value.getTime()), property);
        }

        protected void addCriterionForJDBCDate(String condition, List<Date> values, String property) {
            if (values == null || values.size() == 0) {
                throw new RuntimeException("Value list for " + property + " cannot be null or empty");
            }
            List<java.sql.Date> dateList = new ArrayList<java.sql.Date>();
            Iterator<Date> iter = values.iterator();
            while (iter.hasNext()) {
                dateList.add(new java.sql.Date(iter.next().getTime()));
            }
            addCriterion(condition, dateList, property);
        }

        protected void addCriterionForJDBCDate(String condition, Date value1, Date value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            addCriterion(condition, new java.sql.Date(value1.getTime()), new java.sql.Date(value2.getTime()), property);
        }

        public Criteria andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(Integer value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(Integer value) {
            addCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(Integer value) {
            addCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(Integer value) {
            addCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(Integer value) {
            addCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<Integer> values) {
            addCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<Integer> values) {
            addCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(Integer value1, Integer value2) {
            addCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(Integer value1, Integer value2) {
            addCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNull() {
            addCriterion("create_time is null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNotNull() {
            addCriterion("create_time is not null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeEqualTo(Date value) {
            addCriterionForJDBCDate("create_time =", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotEqualTo(Date value) {
            addCriterionForJDBCDate("create_time <>", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThan(Date value) {
            addCriterionForJDBCDate("create_time >", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("create_time >=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThan(Date value) {
            addCriterionForJDBCDate("create_time <", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("create_time <=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIn(List<Date> values) {
            addCriterionForJDBCDate("create_time in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotIn(List<Date> values) {
            addCriterionForJDBCDate("create_time not in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("create_time between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("create_time not between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andTimeIsNull() {
            addCriterion("`time` is null");
            return (Criteria) this;
        }

        public Criteria andTimeIsNotNull() {
            addCriterion("`time` is not null");
            return (Criteria) this;
        }

        public Criteria andTimeEqualTo(Integer value) {
            addCriterion("`time` =", value, "time");
            return (Criteria) this;
        }

        public Criteria andTimeNotEqualTo(Integer value) {
            addCriterion("`time` <>", value, "time");
            return (Criteria) this;
        }

        public Criteria andTimeGreaterThan(Integer value) {
            addCriterion("`time` >", value, "time");
            return (Criteria) this;
        }

        public Criteria andTimeGreaterThanOrEqualTo(Integer value) {
            addCriterion("`time` >=", value, "time");
            return (Criteria) this;
        }

        public Criteria andTimeLessThan(Integer value) {
            addCriterion("`time` <", value, "time");
            return (Criteria) this;
        }

        public Criteria andTimeLessThanOrEqualTo(Integer value) {
            addCriterion("`time` <=", value, "time");
            return (Criteria) this;
        }

        public Criteria andTimeIn(List<Integer> values) {
            addCriterion("`time` in", values, "time");
            return (Criteria) this;
        }

        public Criteria andTimeNotIn(List<Integer> values) {
            addCriterion("`time` not in", values, "time");
            return (Criteria) this;
        }

        public Criteria andTimeBetween(Integer value1, Integer value2) {
            addCriterion("`time` between", value1, value2, "time");
            return (Criteria) this;
        }

        public Criteria andTimeNotBetween(Integer value1, Integer value2) {
            addCriterion("`time` not between", value1, value2, "time");
            return (Criteria) this;
        }

        public Criteria andResisterMemberCountIsNull() {
            addCriterion("resister_member_count is null");
            return (Criteria) this;
        }

        public Criteria andResisterMemberCountIsNotNull() {
            addCriterion("resister_member_count is not null");
            return (Criteria) this;
        }

        public Criteria andResisterMemberCountEqualTo(Integer value) {
            addCriterion("resister_member_count =", value, "resisterMemberCount");
            return (Criteria) this;
        }

        public Criteria andResisterMemberCountNotEqualTo(Integer value) {
            addCriterion("resister_member_count <>", value, "resisterMemberCount");
            return (Criteria) this;
        }

        public Criteria andResisterMemberCountGreaterThan(Integer value) {
            addCriterion("resister_member_count >", value, "resisterMemberCount");
            return (Criteria) this;
        }

        public Criteria andResisterMemberCountGreaterThanOrEqualTo(Integer value) {
            addCriterion("resister_member_count >=", value, "resisterMemberCount");
            return (Criteria) this;
        }

        public Criteria andResisterMemberCountLessThan(Integer value) {
            addCriterion("resister_member_count <", value, "resisterMemberCount");
            return (Criteria) this;
        }

        public Criteria andResisterMemberCountLessThanOrEqualTo(Integer value) {
            addCriterion("resister_member_count <=", value, "resisterMemberCount");
            return (Criteria) this;
        }

        public Criteria andResisterMemberCountIn(List<Integer> values) {
            addCriterion("resister_member_count in", values, "resisterMemberCount");
            return (Criteria) this;
        }

        public Criteria andResisterMemberCountNotIn(List<Integer> values) {
            addCriterion("resister_member_count not in", values, "resisterMemberCount");
            return (Criteria) this;
        }

        public Criteria andResisterMemberCountBetween(Integer value1, Integer value2) {
            addCriterion("resister_member_count between", value1, value2, "resisterMemberCount");
            return (Criteria) this;
        }

        public Criteria andResisterMemberCountNotBetween(Integer value1, Integer value2) {
            addCriterion("resister_member_count not between", value1, value2, "resisterMemberCount");
            return (Criteria) this;
        }

        public Criteria andResisterImeiCountIsNull() {
            addCriterion("resister_imei_count is null");
            return (Criteria) this;
        }

        public Criteria andResisterImeiCountIsNotNull() {
            addCriterion("resister_imei_count is not null");
            return (Criteria) this;
        }

        public Criteria andResisterImeiCountEqualTo(Integer value) {
            addCriterion("resister_imei_count =", value, "resisterImeiCount");
            return (Criteria) this;
        }

        public Criteria andResisterImeiCountNotEqualTo(Integer value) {
            addCriterion("resister_imei_count <>", value, "resisterImeiCount");
            return (Criteria) this;
        }

        public Criteria andResisterImeiCountGreaterThan(Integer value) {
            addCriterion("resister_imei_count >", value, "resisterImeiCount");
            return (Criteria) this;
        }

        public Criteria andResisterImeiCountGreaterThanOrEqualTo(Integer value) {
            addCriterion("resister_imei_count >=", value, "resisterImeiCount");
            return (Criteria) this;
        }

        public Criteria andResisterImeiCountLessThan(Integer value) {
            addCriterion("resister_imei_count <", value, "resisterImeiCount");
            return (Criteria) this;
        }

        public Criteria andResisterImeiCountLessThanOrEqualTo(Integer value) {
            addCriterion("resister_imei_count <=", value, "resisterImeiCount");
            return (Criteria) this;
        }

        public Criteria andResisterImeiCountIn(List<Integer> values) {
            addCriterion("resister_imei_count in", values, "resisterImeiCount");
            return (Criteria) this;
        }

        public Criteria andResisterImeiCountNotIn(List<Integer> values) {
            addCriterion("resister_imei_count not in", values, "resisterImeiCount");
            return (Criteria) this;
        }

        public Criteria andResisterImeiCountBetween(Integer value1, Integer value2) {
            addCriterion("resister_imei_count between", value1, value2, "resisterImeiCount");
            return (Criteria) this;
        }

        public Criteria andResisterImeiCountNotBetween(Integer value1, Integer value2) {
            addCriterion("resister_imei_count not between", value1, value2, "resisterImeiCount");
            return (Criteria) this;
        }

        public Criteria andKeepMemberCountIsNull() {
            addCriterion("keep_member_count is null");
            return (Criteria) this;
        }

        public Criteria andKeepMemberCountIsNotNull() {
            addCriterion("keep_member_count is not null");
            return (Criteria) this;
        }

        public Criteria andKeepMemberCountEqualTo(Integer value) {
            addCriterion("keep_member_count =", value, "keepMemberCount");
            return (Criteria) this;
        }

        public Criteria andKeepMemberCountNotEqualTo(Integer value) {
            addCriterion("keep_member_count <>", value, "keepMemberCount");
            return (Criteria) this;
        }

        public Criteria andKeepMemberCountGreaterThan(Integer value) {
            addCriterion("keep_member_count >", value, "keepMemberCount");
            return (Criteria) this;
        }

        public Criteria andKeepMemberCountGreaterThanOrEqualTo(Integer value) {
            addCriterion("keep_member_count >=", value, "keepMemberCount");
            return (Criteria) this;
        }

        public Criteria andKeepMemberCountLessThan(Integer value) {
            addCriterion("keep_member_count <", value, "keepMemberCount");
            return (Criteria) this;
        }

        public Criteria andKeepMemberCountLessThanOrEqualTo(Integer value) {
            addCriterion("keep_member_count <=", value, "keepMemberCount");
            return (Criteria) this;
        }

        public Criteria andKeepMemberCountIn(List<Integer> values) {
            addCriterion("keep_member_count in", values, "keepMemberCount");
            return (Criteria) this;
        }

        public Criteria andKeepMemberCountNotIn(List<Integer> values) {
            addCriterion("keep_member_count not in", values, "keepMemberCount");
            return (Criteria) this;
        }

        public Criteria andKeepMemberCountBetween(Integer value1, Integer value2) {
            addCriterion("keep_member_count between", value1, value2, "keepMemberCount");
            return (Criteria) this;
        }

        public Criteria andKeepMemberCountNotBetween(Integer value1, Integer value2) {
            addCriterion("keep_member_count not between", value1, value2, "keepMemberCount");
            return (Criteria) this;
        }

        public Criteria andXffrsCountIsNull() {
            addCriterion("xffrs_count is null");
            return (Criteria) this;
        }

        public Criteria andXffrsCountIsNotNull() {
            addCriterion("xffrs_count is not null");
            return (Criteria) this;
        }

        public Criteria andXffrsCountEqualTo(Integer value) {
            addCriterion("xffrs_count =", value, "xffrsCount");
            return (Criteria) this;
        }

        public Criteria andXffrsCountNotEqualTo(Integer value) {
            addCriterion("xffrs_count <>", value, "xffrsCount");
            return (Criteria) this;
        }

        public Criteria andXffrsCountGreaterThan(Integer value) {
            addCriterion("xffrs_count >", value, "xffrsCount");
            return (Criteria) this;
        }

        public Criteria andXffrsCountGreaterThanOrEqualTo(Integer value) {
            addCriterion("xffrs_count >=", value, "xffrsCount");
            return (Criteria) this;
        }

        public Criteria andXffrsCountLessThan(Integer value) {
            addCriterion("xffrs_count <", value, "xffrsCount");
            return (Criteria) this;
        }

        public Criteria andXffrsCountLessThanOrEqualTo(Integer value) {
            addCriterion("xffrs_count <=", value, "xffrsCount");
            return (Criteria) this;
        }

        public Criteria andXffrsCountIn(List<Integer> values) {
            addCriterion("xffrs_count in", values, "xffrsCount");
            return (Criteria) this;
        }

        public Criteria andXffrsCountNotIn(List<Integer> values) {
            addCriterion("xffrs_count not in", values, "xffrsCount");
            return (Criteria) this;
        }

        public Criteria andXffrsCountBetween(Integer value1, Integer value2) {
            addCriterion("xffrs_count between", value1, value2, "xffrsCount");
            return (Criteria) this;
        }

        public Criteria andXffrsCountNotBetween(Integer value1, Integer value2) {
            addCriterion("xffrs_count not between", value1, value2, "xffrsCount");
            return (Criteria) this;
        }

        public Criteria andZffrsCountIsNull() {
            addCriterion("zffrs_count is null");
            return (Criteria) this;
        }

        public Criteria andZffrsCountIsNotNull() {
            addCriterion("zffrs_count is not null");
            return (Criteria) this;
        }

        public Criteria andZffrsCountEqualTo(Integer value) {
            addCriterion("zffrs_count =", value, "zffrsCount");
            return (Criteria) this;
        }

        public Criteria andZffrsCountNotEqualTo(Integer value) {
            addCriterion("zffrs_count <>", value, "zffrsCount");
            return (Criteria) this;
        }

        public Criteria andZffrsCountGreaterThan(Integer value) {
            addCriterion("zffrs_count >", value, "zffrsCount");
            return (Criteria) this;
        }

        public Criteria andZffrsCountGreaterThanOrEqualTo(Integer value) {
            addCriterion("zffrs_count >=", value, "zffrsCount");
            return (Criteria) this;
        }

        public Criteria andZffrsCountLessThan(Integer value) {
            addCriterion("zffrs_count <", value, "zffrsCount");
            return (Criteria) this;
        }

        public Criteria andZffrsCountLessThanOrEqualTo(Integer value) {
            addCriterion("zffrs_count <=", value, "zffrsCount");
            return (Criteria) this;
        }

        public Criteria andZffrsCountIn(List<Integer> values) {
            addCriterion("zffrs_count in", values, "zffrsCount");
            return (Criteria) this;
        }

        public Criteria andZffrsCountNotIn(List<Integer> values) {
            addCriterion("zffrs_count not in", values, "zffrsCount");
            return (Criteria) this;
        }

        public Criteria andZffrsCountBetween(Integer value1, Integer value2) {
            addCriterion("zffrs_count between", value1, value2, "zffrsCount");
            return (Criteria) this;
        }

        public Criteria andZffrsCountNotBetween(Integer value1, Integer value2) {
            addCriterion("zffrs_count not between", value1, value2, "zffrsCount");
            return (Criteria) this;
        }

        public Criteria andXffeMoneyIsNull() {
            addCriterion("xffe_money is null");
            return (Criteria) this;
        }

        public Criteria andXffeMoneyIsNotNull() {
            addCriterion("xffe_money is not null");
            return (Criteria) this;
        }

        public Criteria andXffeMoneyEqualTo(BigDecimal value) {
            addCriterion("xffe_money =", value, "xffeMoney");
            return (Criteria) this;
        }

        public Criteria andXffeMoneyNotEqualTo(BigDecimal value) {
            addCriterion("xffe_money <>", value, "xffeMoney");
            return (Criteria) this;
        }

        public Criteria andXffeMoneyGreaterThan(BigDecimal value) {
            addCriterion("xffe_money >", value, "xffeMoney");
            return (Criteria) this;
        }

        public Criteria andXffeMoneyGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("xffe_money >=", value, "xffeMoney");
            return (Criteria) this;
        }

        public Criteria andXffeMoneyLessThan(BigDecimal value) {
            addCriterion("xffe_money <", value, "xffeMoney");
            return (Criteria) this;
        }

        public Criteria andXffeMoneyLessThanOrEqualTo(BigDecimal value) {
            addCriterion("xffe_money <=", value, "xffeMoney");
            return (Criteria) this;
        }

        public Criteria andXffeMoneyIn(List<BigDecimal> values) {
            addCriterion("xffe_money in", values, "xffeMoney");
            return (Criteria) this;
        }

        public Criteria andXffeMoneyNotIn(List<BigDecimal> values) {
            addCriterion("xffe_money not in", values, "xffeMoney");
            return (Criteria) this;
        }

        public Criteria andXffeMoneyBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("xffe_money between", value1, value2, "xffeMoney");
            return (Criteria) this;
        }

        public Criteria andXffeMoneyNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("xffe_money not between", value1, value2, "xffeMoney");
            return (Criteria) this;
        }

        public Criteria andZffeMoneyIsNull() {
            addCriterion("zffe_money is null");
            return (Criteria) this;
        }

        public Criteria andZffeMoneyIsNotNull() {
            addCriterion("zffe_money is not null");
            return (Criteria) this;
        }

        public Criteria andZffeMoneyEqualTo(BigDecimal value) {
            addCriterion("zffe_money =", value, "zffeMoney");
            return (Criteria) this;
        }

        public Criteria andZffeMoneyNotEqualTo(BigDecimal value) {
            addCriterion("zffe_money <>", value, "zffeMoney");
            return (Criteria) this;
        }

        public Criteria andZffeMoneyGreaterThan(BigDecimal value) {
            addCriterion("zffe_money >", value, "zffeMoney");
            return (Criteria) this;
        }

        public Criteria andZffeMoneyGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("zffe_money >=", value, "zffeMoney");
            return (Criteria) this;
        }

        public Criteria andZffeMoneyLessThan(BigDecimal value) {
            addCriterion("zffe_money <", value, "zffeMoney");
            return (Criteria) this;
        }

        public Criteria andZffeMoneyLessThanOrEqualTo(BigDecimal value) {
            addCriterion("zffe_money <=", value, "zffeMoney");
            return (Criteria) this;
        }

        public Criteria andZffeMoneyIn(List<BigDecimal> values) {
            addCriterion("zffe_money in", values, "zffeMoney");
            return (Criteria) this;
        }

        public Criteria andZffeMoneyNotIn(List<BigDecimal> values) {
            addCriterion("zffe_money not in", values, "zffeMoney");
            return (Criteria) this;
        }

        public Criteria andZffeMoneyBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("zffe_money between", value1, value2, "zffeMoney");
            return (Criteria) this;
        }

        public Criteria andZffeMoneyNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("zffe_money not between", value1, value2, "zffeMoney");
            return (Criteria) this;
        }

        public Criteria andXfflRateIsNull() {
            addCriterion("xffl_rate is null");
            return (Criteria) this;
        }

        public Criteria andXfflRateIsNotNull() {
            addCriterion("xffl_rate is not null");
            return (Criteria) this;
        }

        public Criteria andXfflRateEqualTo(BigDecimal value) {
            addCriterion("xffl_rate =", value, "xfflRate");
            return (Criteria) this;
        }

        public Criteria andXfflRateNotEqualTo(BigDecimal value) {
            addCriterion("xffl_rate <>", value, "xfflRate");
            return (Criteria) this;
        }

        public Criteria andXfflRateGreaterThan(BigDecimal value) {
            addCriterion("xffl_rate >", value, "xfflRate");
            return (Criteria) this;
        }

        public Criteria andXfflRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("xffl_rate >=", value, "xfflRate");
            return (Criteria) this;
        }

        public Criteria andXfflRateLessThan(BigDecimal value) {
            addCriterion("xffl_rate <", value, "xfflRate");
            return (Criteria) this;
        }

        public Criteria andXfflRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("xffl_rate <=", value, "xfflRate");
            return (Criteria) this;
        }

        public Criteria andXfflRateIn(List<BigDecimal> values) {
            addCriterion("xffl_rate in", values, "xfflRate");
            return (Criteria) this;
        }

        public Criteria andXfflRateNotIn(List<BigDecimal> values) {
            addCriterion("xffl_rate not in", values, "xfflRate");
            return (Criteria) this;
        }

        public Criteria andXfflRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("xffl_rate between", value1, value2, "xfflRate");
            return (Criteria) this;
        }

        public Criteria andXfflRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("xffl_rate not between", value1, value2, "xfflRate");
            return (Criteria) this;
        }

        public Criteria andZfflRateIsNull() {
            addCriterion("zffl_rate is null");
            return (Criteria) this;
        }

        public Criteria andZfflRateIsNotNull() {
            addCriterion("zffl_rate is not null");
            return (Criteria) this;
        }

        public Criteria andZfflRateEqualTo(BigDecimal value) {
            addCriterion("zffl_rate =", value, "zfflRate");
            return (Criteria) this;
        }

        public Criteria andZfflRateNotEqualTo(BigDecimal value) {
            addCriterion("zffl_rate <>", value, "zfflRate");
            return (Criteria) this;
        }

        public Criteria andZfflRateGreaterThan(BigDecimal value) {
            addCriterion("zffl_rate >", value, "zfflRate");
            return (Criteria) this;
        }

        public Criteria andZfflRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("zffl_rate >=", value, "zfflRate");
            return (Criteria) this;
        }

        public Criteria andZfflRateLessThan(BigDecimal value) {
            addCriterion("zffl_rate <", value, "zfflRate");
            return (Criteria) this;
        }

        public Criteria andZfflRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("zffl_rate <=", value, "zfflRate");
            return (Criteria) this;
        }

        public Criteria andZfflRateIn(List<BigDecimal> values) {
            addCriterion("zffl_rate in", values, "zfflRate");
            return (Criteria) this;
        }

        public Criteria andZfflRateNotIn(List<BigDecimal> values) {
            addCriterion("zffl_rate not in", values, "zfflRate");
            return (Criteria) this;
        }

        public Criteria andZfflRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("zffl_rate between", value1, value2, "zfflRate");
            return (Criteria) this;
        }

        public Criteria andZfflRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("zffl_rate not between", value1, value2, "zfflRate");
            return (Criteria) this;
        }

        public Criteria andArppuIsNull() {
            addCriterion("arppu is null");
            return (Criteria) this;
        }

        public Criteria andArppuIsNotNull() {
            addCriterion("arppu is not null");
            return (Criteria) this;
        }

        public Criteria andArppuEqualTo(BigDecimal value) {
            addCriterion("arppu =", value, "arppu");
            return (Criteria) this;
        }

        public Criteria andArppuNotEqualTo(BigDecimal value) {
            addCriterion("arppu <>", value, "arppu");
            return (Criteria) this;
        }

        public Criteria andArppuGreaterThan(BigDecimal value) {
            addCriterion("arppu >", value, "arppu");
            return (Criteria) this;
        }

        public Criteria andArppuGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("arppu >=", value, "arppu");
            return (Criteria) this;
        }

        public Criteria andArppuLessThan(BigDecimal value) {
            addCriterion("arppu <", value, "arppu");
            return (Criteria) this;
        }

        public Criteria andArppuLessThanOrEqualTo(BigDecimal value) {
            addCriterion("arppu <=", value, "arppu");
            return (Criteria) this;
        }

        public Criteria andArppuIn(List<BigDecimal> values) {
            addCriterion("arppu in", values, "arppu");
            return (Criteria) this;
        }

        public Criteria andArppuNotIn(List<BigDecimal> values) {
            addCriterion("arppu not in", values, "arppu");
            return (Criteria) this;
        }

        public Criteria andArppuBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("arppu between", value1, value2, "arppu");
            return (Criteria) this;
        }

        public Criteria andArppuNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("arppu not between", value1, value2, "arppu");
            return (Criteria) this;
        }

        public Criteria andArpuIsNull() {
            addCriterion("arpu is null");
            return (Criteria) this;
        }

        public Criteria andArpuIsNotNull() {
            addCriterion("arpu is not null");
            return (Criteria) this;
        }

        public Criteria andArpuEqualTo(BigDecimal value) {
            addCriterion("arpu =", value, "arpu");
            return (Criteria) this;
        }

        public Criteria andArpuNotEqualTo(BigDecimal value) {
            addCriterion("arpu <>", value, "arpu");
            return (Criteria) this;
        }

        public Criteria andArpuGreaterThan(BigDecimal value) {
            addCriterion("arpu >", value, "arpu");
            return (Criteria) this;
        }

        public Criteria andArpuGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("arpu >=", value, "arpu");
            return (Criteria) this;
        }

        public Criteria andArpuLessThan(BigDecimal value) {
            addCriterion("arpu <", value, "arpu");
            return (Criteria) this;
        }

        public Criteria andArpuLessThanOrEqualTo(BigDecimal value) {
            addCriterion("arpu <=", value, "arpu");
            return (Criteria) this;
        }

        public Criteria andArpuIn(List<BigDecimal> values) {
            addCriterion("arpu in", values, "arpu");
            return (Criteria) this;
        }

        public Criteria andArpuNotIn(List<BigDecimal> values) {
            addCriterion("arpu not in", values, "arpu");
            return (Criteria) this;
        }

        public Criteria andArpuBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("arpu between", value1, value2, "arpu");
            return (Criteria) this;
        }

        public Criteria andArpuNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("arpu not between", value1, value2, "arpu");
            return (Criteria) this;
        }

        public Criteria andBrandIsNull() {
            addCriterion("brand is null");
            return (Criteria) this;
        }

        public Criteria andBrandIsNotNull() {
            addCriterion("brand is not null");
            return (Criteria) this;
        }

        public Criteria andBrandEqualTo(String value) {
            addCriterion("brand =", value, "brand");
            return (Criteria) this;
        }

        public Criteria andBrandNotEqualTo(String value) {
            addCriterion("brand <>", value, "brand");
            return (Criteria) this;
        }

        public Criteria andBrandGreaterThan(String value) {
            addCriterion("brand >", value, "brand");
            return (Criteria) this;
        }

        public Criteria andBrandGreaterThanOrEqualTo(String value) {
            addCriterion("brand >=", value, "brand");
            return (Criteria) this;
        }

        public Criteria andBrandLessThan(String value) {
            addCriterion("brand <", value, "brand");
            return (Criteria) this;
        }

        public Criteria andBrandLessThanOrEqualTo(String value) {
            addCriterion("brand <=", value, "brand");
            return (Criteria) this;
        }

        public Criteria andBrandLike(String value) {
            addCriterion("brand like", value, "brand");
            return (Criteria) this;
        }

        public Criteria andBrandNotLike(String value) {
            addCriterion("brand not like", value, "brand");
            return (Criteria) this;
        }

        public Criteria andBrandIn(List<String> values) {
            addCriterion("brand in", values, "brand");
            return (Criteria) this;
        }

        public Criteria andBrandNotIn(List<String> values) {
            addCriterion("brand not in", values, "brand");
            return (Criteria) this;
        }

        public Criteria andBrandBetween(String value1, String value2) {
            addCriterion("brand between", value1, value2, "brand");
            return (Criteria) this;
        }

        public Criteria andBrandNotBetween(String value1, String value2) {
            addCriterion("brand not between", value1, value2, "brand");
            return (Criteria) this;
        }

        public Criteria andTypeIsNull() {
            addCriterion("`type` is null");
            return (Criteria) this;
        }

        public Criteria andTypeIsNotNull() {
            addCriterion("`type` is not null");
            return (Criteria) this;
        }

        public Criteria andTypeEqualTo(Integer value) {
            addCriterion("`type` =", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeNotEqualTo(Integer value) {
            addCriterion("`type` <>", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeGreaterThan(Integer value) {
            addCriterion("`type` >", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeGreaterThanOrEqualTo(Integer value) {
            addCriterion("`type` >=", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeLessThan(Integer value) {
            addCriterion("`type` <", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeLessThanOrEqualTo(Integer value) {
            addCriterion("`type` <=", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeIn(List<Integer> values) {
            addCriterion("`type` in", values, "type");
            return (Criteria) this;
        }

        public Criteria andTypeNotIn(List<Integer> values) {
            addCriterion("`type` not in", values, "type");
            return (Criteria) this;
        }

        public Criteria andTypeBetween(Integer value1, Integer value2) {
            addCriterion("`type` between", value1, value2, "type");
            return (Criteria) this;
        }

        public Criteria andTypeNotBetween(Integer value1, Integer value2) {
            addCriterion("`type` not between", value1, value2, "type");
            return (Criteria) this;
        }

        public Criteria andAppIdIsNull() {
            addCriterion("app_id is null");
            return (Criteria) this;
        }

        public Criteria andAppIdIsNotNull() {
            addCriterion("app_id is not null");
            return (Criteria) this;
        }

        public Criteria andAppIdEqualTo(Integer value) {
            addCriterion("app_id =", value, "appId");
            return (Criteria) this;
        }

        public Criteria andAppIdNotEqualTo(Integer value) {
            addCriterion("app_id <>", value, "appId");
            return (Criteria) this;
        }

        public Criteria andAppIdGreaterThan(Integer value) {
            addCriterion("app_id >", value, "appId");
            return (Criteria) this;
        }

        public Criteria andAppIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("app_id >=", value, "appId");
            return (Criteria) this;
        }

        public Criteria andAppIdLessThan(Integer value) {
            addCriterion("app_id <", value, "appId");
            return (Criteria) this;
        }

        public Criteria andAppIdLessThanOrEqualTo(Integer value) {
            addCriterion("app_id <=", value, "appId");
            return (Criteria) this;
        }

        public Criteria andAppIdIn(List<Integer> values) {
            addCriterion("app_id in", values, "appId");
            return (Criteria) this;
        }

        public Criteria andAppIdNotIn(List<Integer> values) {
            addCriterion("app_id not in", values, "appId");
            return (Criteria) this;
        }

        public Criteria andAppIdBetween(Integer value1, Integer value2) {
            addCriterion("app_id between", value1, value2, "appId");
            return (Criteria) this;
        }

        public Criteria andAppIdNotBetween(Integer value1, Integer value2) {
            addCriterion("app_id not between", value1, value2, "appId");
            return (Criteria) this;
        }
    }

    /**
     */
    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}